首页

欢迎

 

Welcome

欢迎来到这里, 这是一个学习数学、讨论数学的网站.

转到问题

请输入问题号, 例如: 2512

IMAGINE, THINK, and DO
How to be a scientist, mathematician and an engineer, all in one?
--- S. Muthu Muthukrishnan

Local Notes

Local Notes 是一款 Windows 下的笔记系统.

Local Notes 下载

Sowya

Sowya 是一款运行于 Windows 下的计算软件.

详情

下载 Sowya.7z (包含最新版的 Sowya.exe and SowyaApp.exe)


注: 自 v0.550 开始, Calculator 更名为 Sowya. [Sowya] 是吴语中数学的发音, 可在 cn.bing.com/translator 中输入 Sowya, 听其英语发音或法语发音.





注册

欢迎注册, 您的参与将会促进数学交流. 注册

在注册之前, 或许您想先试用一下. 测试帐号: usertest 密码: usertest. 请不要更改密码.


我制作的 slides

Problem

随机显示问题

Problèmes d'affichage aléatoires

软件 >> Calculator
Questions in category: Calculator (Calculator).

[BUG] Calculator 计算阶乘时的 bug.

Posted by haifeng on 2022-08-07 08:51:08 last update 2022-08-07 08:58:01 | Answers (0)


//BUG: 当输入 (5 - 1)!(3 - 1) 会出现下面的bug

>> (5 - 1)!(3 - 1)
in > (5 - 1)!(3 - 1)

out > str1 = 1, _str1 = 1
str2 = 2, _str2 = 2
str1 = 1, _str1 = 1
str1 = 1, _str1 = 1
in > 1!2
diff = -1


>> 5!(a-b)
in> 5!(a-b)

out> str1=5, _str1=5
str2=1, _str2=1
str1=5, _str1=5
str1=5, _str1=5
in>5!1
diff=4
120*a-120*b


【分析】这里程序将 ! 后面的默认理解为 1. 即 5!(a-b) 理解为 5!*(a-b)

而  (5 - 1)!(3 - 1) 理解为  (5-1)*1!(3-1)